Clinicians and patients typically communicate with an implantable medial device (IMD) using a clinician programmer (CP) and patient programmer, i.e., patient therapy manager (PTM), respectively. A clinician may use a CP to perform advanced IMD setup and diagnostics, while the PTM typically provides a less feature-rich interface for the patient to interact with the IMD. For example, while both the CP and PTM may be used to “program” an IMD and receive diagnostic information from the IMD, the PTM may generally only able to make limited programming modifications, and receive limited diagnostic information that is relevant to the patient, e.g., battery status. Both the CP and the PTM have traditionally communicated directly with the IMD for programming the IMD.
CPs and PTMs are computing devices. Traditionally, these computing devices have been special-purpose devices, i.e., dedicated to tasks associated with programming or otherwise communicating with IMDs. For example, these computing devices generally run custom operating systems, and only have software supporting CP or PTM functionality loaded thereon. Further, these computing devices are typically limited in their input/output capabilities, e.g., to communication with IMDs and, in some cases, each other.